Such a framework system typically comprises one or more servers connected so as to be capable of communication with one or more clients. Such a framework system has conventionally been provided with the two basic functionalities represented by messaging service functionality and framework service functionality. A messaging service is a service that processes messages communicated between or among client or clients and server or servers, and/or between or among server or servers and server or servers. A framework service possesses one or more but ordinarily a plurality of sets of business logic (business operation process or processes), and performs one or more transactions by synchronously or asynchronously executing one or more selected sets of business logic responsive to one or more messages from one or more clients.
However, in the conventional example described above, schedules for processing of business logic by framework services are defined by fixed programming. This makes it difficult to flexibly define flows of complex business logic to accommodate diverse varieties of messages.
Furthermore, a plurality of sets of business logic may be executed in turn in response to message or messages from client or clients. For example, logging of a purchase, update of inventory, entry into an accounts payable ledger, and the like might be performed in response to a request from a client for logging of a purchase. In such a case, in a conventional system, business logic for logging of purchases and other such front-office-type operations might for example be executed synchronously with respect to the message, with business logic for update of inventory, entry into an accounts payable ledger, and other such back-office-type operations being executed through batch processing carried out at night. This means that it is necessary to wait until the next day before the results of back-office processing will become available. But to be able to promptly take advantage of a prospective transaction it is desirable that back-office business logic be executed as soon as possible so that those results can be made available quickly.
Furthermore, in the case of a system employing a plurality of framework servers, messages may also be sent between and/or among framework servers as they work together to execute a group of sets of business logic. The status or statuses (e.g., the type of business logic stored therein, whether operating normally or not, whether busy or not, etc.) of any particular server will ordinarily be different from the status or statuses of other servers, and will moreover change as time goes on. This complicates scheduling, i.e., the decision of which server or servers to employ for execution of business logic.